home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Celestin Apprentice 5
/
Apprentice-Release5.iso
/
Source Code
/
PowerPlant
/
AGA Classes 1.2
/
CheckBox
/
LAGACheckBox.h
< prev
Wrap
Text File
|
1996-06-30
|
5KB
|
114 lines
// ===========================================================================
// LAGACheckBox.h
// ===========================================================================
// “Apple Grayscale Appearance” compliant check box
// Copyright © 1996 Chrisoft (Christophe ANDRES) All rights reserved.
//
// You may use this source code in any application (commercial, shareware, freeware,
// postcardware, etc), but not remove this notice (no need to acknowledge the use of
// this class in the about box)
// You may not sell this source code in any form. This source code may be placed on
// publicly accessable archive sites and source code disks. It may not be placed on
// profit archive sites and source code disks without the permission of the author,
// Christophe ANDRES.
//
// This source code is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
//
// If you make any change or improvement on this class, please send the improved/changed
// version to : chrisoft@calva.net or Christophe ANDRES
// 20, rue Prosper Mérimée
// 67100 STRASBOURG
// FRANCE
//
// ===========================================================================
// LAGACheckBox.cp <- double-click + Command-D to see class implementation
//
// LAGACheckBox is my implementation of the “Apple Grayscale Appearance for System 7.5”
// Check box
//
// This class requires AGAColors.cp to be present in your project
//
// Version : 1.2
//
// Change History (most recent first, date in US form : mm/dd/yy):
//
// 06/30/96 ca Public release of version 1.2
// 06/04/96 ca Added guard macros in header files
// Increased version to 1.2
// 05/23/96 ca Updated the below changes (M™H) to allow the usage of either the standard checkbox template
// or the custom LAGACheckBox template. The standard checkbox template is easier for layout
// because you can see the text, but you cannot define directly a mixed value check box
// Defined class_ID1 and CreateAGACheckBoxStream1 to handle the two template possibilities
// Added a CPPb to "LAGACheckBox CPPb.rsrc" called LAGACheckBox1 to handle the standard checkbox
// template, without having to tinker the class ID
// Added a static RegisterClass method to simplify the class registration
// 05/23/96 M™H Changed the stream constructor to use the standard Check box template in Contructor
// which enables to see the text put in a Check box while defining the view
// 05/15/96 ca Increased version to 1.1
// Added copy constructor
// Added "on the fly" constructor
// Added GetDescriptor and SetDescriptor
// Added SetTextTraitsID and GetTextTraitsID
// Added change history
// 04/22/96 ca class made available by Christophe ANDRES <chrisoft@calva.net>
// (version 1.0)
//
// To Do:
//
#ifndef _H_LAGACheckBox
#define _H_LAGACheckBox
#pragma once
#include <LStdControl.h>
class LAGACheckBox : public LControl
{
public :
enum { class_ID = 'AGA1', class_ID1 = 'AgA1' }; // begin <05/23/96 ca>
static void RegisterClass ();
static LAGACheckBox* CreateAGACheckBoxStream (LStream *inStream);
static LAGACheckBox* CreateAGACheckBoxStream1 (LStream *inStream); // end <05/23/96 ca>
LAGACheckBox ();
LAGACheckBox (LStream *inStream, Boolean inCreateWithStdCheckBox = false); // <05/23/96 ca>
LAGACheckBox (const LAGACheckBox &inOriginal); // <05/15/96 ca>
LAGACheckBox (const SPaneInfo &inPaneInfo, MessageT inValueMessage, Int32 inValue, // <05/15/96 ca>
ResIDT inTextTraitsID,Str255 inTitle);
virtual void SetValue (Int32 inValue);
virtual StringPtr GetDescriptor (Str255 outDescriptor) const; // <05/15/96 ca>
virtual void SetDescriptor (ConstStringPtr inDescriptor); // <05/15/96 ca>
virtual void SetTextTraitsID (ResIDT inTextTraitsID) { mTextTraitsID = inTextTraitsID; Refresh(); };// <05/15/96 ca>
virtual ResIDT GetTextTraitsID () { return(mTextTraitsID); }; // <05/15/96 ca>
protected :
virtual void DrawSelf ();
virtual void DrawGraphic (Boolean inPushed = false);
virtual void DrawText ();
virtual void HotSpotAction (Int16 inHotSpot, Boolean inCurrInside, Boolean inPrevInside);
virtual void HotSpotResult (Int16 inHotSpot);
virtual void DisableSelf () { Refresh(); };
virtual void EnableSelf () { Refresh(); };
LStr255 mTitle;
ResIDT mTextTraitsID;
};
#endif